//剑指offer49题
字符串转整形
主要是需要考虑不通过的测试样例：
1、字符串为空；
2、字符串长度为0；
3、字符串转整形后溢出(重要)；
4、字符串中含字母
public class Solution {
    public int StrToInt(String str) {
		if(str==null||str.length()<=0)return 0;//前两种不通过样例
		char[] tmp=str.toCharArray();
		long sum=0;//记录输出的结果，防止最后结果溢出就使用long来存储,没溢出的话最后再转为int型
		boolean target=false;//记录符号位,默认false
		for(int i=0;i<tmp.length;i++){
			if(i==0&&str[i]=='-'){
				target=true;//符号位为正,将target置为true;
			}
			else if(i==0&&str[i]=='+'){
				target=false;//符号位为负,将target置为false;
			}else{
				int a=(int)(tmp[i]-'0');//包含字母的测试用例
				if(a<0||a>9)return 0;
		sum=(target==false)? sum*10+a:sum*10-a;//溢出的测试用例
		if((!target&&sum>Integer.MAX_VALUE)||(target&&sum<Integer.MIN_VALUE)){
			return 0;
			}
		}
	}
	return (int)sum;
  }
}